1. Field of the Invention
The present invention is related to the field of wireless communications between devices that participate in forming a network, and more specifically to devices, softwares and methods for accelerating data exchanges in a wireless network even in the presence of hidden nodes.
2. Description of the Related Art
Local area networks (LANs) are increasingly used to transfer data. A relatively new application is wireless LANs, also known as WLANs. These can provide the benefits of a wired LAN, without requiring the different stations to be physically coupled to each other. There is no need for procuring transmission wires such as coaxial conductors, twisted prayers of wires, optical fibers, etc. for transferring the data. Instead, the data is transferred through space, either using radio frequency (RF) waves (that are also known as microwaves), or optical frequency waves, such as infrared (IR) light. A network may be formed by bringing components close together, without the need to plug transmission wires to them.
Radio based WLANs have several characteristics which differ from those of wired LANs. These characteristics include lower achievable data capacity, which is due to a number of factors, such as bandwidth limitations. That is why it is desirable to not waste time windows in such communications.
In addition, since many devices share the same medium, there can be problems if concurrent transmissions are permitted. These problems are discussed in more detail below.
Referring to FIG. 1, a network 110 includes a device 120 that operates as an Access Point (AP) 120 to network 120.
AP 120 may establish wireless concurrent communications with a first wireless station STA1 140 and a second wireless station STA2 150. This will mean establishing two communication links, namely link 145 with STA1 140 and link 155 with STA2 150.
Both links 145, 155 are within the same medium 165. It becomes apparent that there is a need to prevent peripheral stations STA1 140 and STA2 150 from transmitting simultaneously along links 145, 155 respectively. Concurrent transmission within the same medium 165 would, if permitted, corrupt the data being received by AP 120.
Concurrent transmission is typically avoided by forcing all devices to follow protocols. Many such protocols are being developed under the aegis of the Institute of Electrical and Electronic Engineers (IEEE), in terms of standard 802.11.
One protocol is for operation while in a Point Coordination Function (PCF). The protocol has AP 120 establishing a communication scheme after receiving requests from contending peripheral devices STA1 140, STA2 150. These are requests for reserving resources, such as bandwidth and memory, and are therefore also known as reservation requests.
Afterwards AP 120 processes the contending reservation requests, and resolves them. In other words, it generates a schedule for when each one of peripheral devices STA1 140, STA2 150 should transmit. Then AP 120 informs peripheral devices STA1 140, STA2 150 of the transmission schedule as follows.
Referring now to FIG. 2A, a diagram of pulses within medium 165 is shown. A time axis TM designates times of the events. Pulses shown above the time axis TM are those transmitted by AP 120, while those below axis TM are transmitted by devices STA1 140, STA2 150. Axis TM thus provides a coordinate of when pulses occur. As such, their lack of collision can be gauged, along with their overall efficiency.
AP 120 first transmits a scheduling pulse 220, which is also called a polling pulse. Scheduling pulse 220 includes a number of components, such as a header 222, a plan 224 to exchange data with station STA1 140 for a first time window of duration T1, a plan 226 to exchange data with station STA2 150 for a second time window of duration T2 shortly after time T1 expires, and a section 228 that may include a trailer, depending on the protocol. Section 228 may additionally include plans for exchanging data with other stations, etc.
In fact, since scheduling pulse 220 includes instructions for more than one peripheral, it is sometimes called a multi-polling frame. Even though only two peripheral devices STA1 140, STA2 150 are described, such is by example and not by limitation. The invention is not limited to just two peripheral stations, and this description is in fact extendible to more.
Both STA1 140, STA2 150 receive scheduling pulse 220. That informs each of them the time windows during which they are allowed to exchange data with AP 120.
The first device STA1 140 waits for a time interval TS. Time interval TS must be as short or shorter than the Short Inter Frame Space (SIFS) of the connection. This way the continuity will not be broken, and any other device that may want to contend for medium 165 will continue waiting.
Then first device STA1 140 exchanges data with AP 120, which is depicted as a pulse 245. While pulse 245 covers simultaneously both above and below axis TM, that does not mean there is concurrent transmission. During that time, STA1 140 and AP 120 are exchanging data, acknowledgement pulses (ACK), etc. This exchanging data lasts during the first time window. Its time duration T1 has been determined by AP 120, and learned from scheduling pulse 220.
Then, after another short time interval TS, the second device STA2 150 exchanges data with AP 120, which is depicted as a pulse 255. This exchanging data lasts during the second time window. Its duration T2 has been determined by AP 120, and learned from scheduling pulse 220.
Referring now to FIG. 2B, a variation is shown. Everything is the same, except the transmission of data from STA1 140 is labeled as pulse 247. Pulse 247 lasts for a time duration T11, which is less than the scheduled T1. In other words, the session of AP 120 with the first device STA1 140 terminates prematurely. This may happen if STA1 140 is a telephone that has not received all its data by the time it is to transmit.
In FIG. 2B, second device STA2 150 will initiate pulse 255 when the second time window is scheduled. This, however, leaves a quiet time window TQ.
Quiet time window TQ is merely wasted time at best. Worse, window TQ is larger than TQ or SIFS. This engenders the possibility that a device that has been brought close and seeks to establish a connection with AP 120 may interpret TQ as a time suitable for submitting a reservation request. This will break the continuity, and force rescheduling, which is inefficient. In the worst case, there could be collision.
Referring now to FIG. 2C, a solution to this problem is described, which has been proposed in a paper titled “IEEE 802.11 QoS MAC Enhancements—Joint Proposal”, IEEE 802.11 Document No. 00/071, May 2000, by ATT, Lucent and Sharewave.
Briefly, it is proposed that the second time window is rescheduled to start immediately after pulse 247 concludes. Indeed, that it should happen after a time TS or equivalent. The advantage is that the whole session will finish faster. In addition, quiet time window TQ is eliminated, along with its potential problems.
The solution of FIG. 2C suffers from a problem, which this document labels a hidden node problem. Referring back to FIG. 1, there may be a physical obstruction 173, which prevents second device STA2 150 from sensing the transmissions of first device STA1 140. In other words, device STA1 140 is a node which is hidden from device STA2 150.
In that case, second device STA2 150 will not know when pulse 247 (of FIG. 2C) ends. It will not have enough information to reschedule, and will therefore assume that the entire window TQ will be occupied. Then the system will behave as in FIG. 2B, and the advantage will be lost.